/*
 *    Copyright (c) 2018-2025, lengleng All rights reserved.
 *
 * Redistribution and use in source and binary forms, with or without
 * modification, are permitted provided that the following conditions are met:
 *
 * Redistributions of source code must retain the above copyright notice,
 * this list of conditions and the following disclaimer.
 * Redistributions in binary form must reproduce the above copyright
 * notice, this list of conditions and the following disclaimer in the
 * documentation and/or other materials provided with the distribution.
 * Neither the name of the pig4cloud.com developer nor the names of its
 * contributors may be used to endorse or promote products derived from
 * this software without specific prior written permission.
 * Author: lengleng (wangiegie@gmail.com)
 */

package com.pig4cloud.pig.generator.entity;

import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.extension.activerecord.Model;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.math.BigDecimal;
import java.io.Serializable;
import java.time.LocalDateTime;

/**
 * 商品表
 *
 * @author pig code generator
 * @date 2021-07-16 09:58:00
 */
@Data
@TableName("pms_product")
@EqualsAndHashCode(callSuper = true)
@ApiModel(value = "商品表")
public class PmsProduct extends Model<PmsProduct> {
private static final long serialVersionUID = 1L;

    /**
     * 
     */
    @TableId
    @ApiModelProperty(value="")
    private Long id;
    /**
     * 品牌id
     */
    @ApiModelProperty(value="品牌id")
    private Long brandId;
    /**
     * 品牌分类id
     */
    @ApiModelProperty(value="品牌分类id")
    private Long productCategoryId;
    /**
     * 运费模版id
     */
    @ApiModelProperty(value="运费模版id")
    private Long feightTemplateId;
    /**
     * 品牌属性分类id
     */
    @ApiModelProperty(value="品牌属性分类id")
    private Long productAttributeCategoryId;
    /**
     * 商品名称
     */
    @ApiModelProperty(value="商品名称")
    private String name;
    /**
     * 图片
     */
    @ApiModelProperty(value="图片")
    private String pic;
    /**
     * 货号
     */
    @ApiModelProperty(value="货号")
    private String productSn;
    /**
     * 删除状态：0->未删除；1->已删除
     */
    @ApiModelProperty(value="删除状态：0->未删除；1->已删除")
    private Integer deleteStatus;
    /**
     * 上架状态：0->下架；1->上架
     */
    @ApiModelProperty(value="上架状态：0->下架；1->上架")
    private String publishStatus;
    /**
     * 新品状态:0->不是新品；1->新品
     */
    @ApiModelProperty(value="新品状态:0->不是新品；1->新品")
    private Integer newStatus;
    /**
     * 推荐状态；0->不推荐；1->推荐
     */
    @ApiModelProperty(value="推荐状态；0->不推荐；1->推荐")
    private Integer recommandStatus;
    /**
     * 审核状态：0->未审核；1->审核通过
     */
    @ApiModelProperty(value="审核状态：0->未审核；1->审核通过")
    private Integer verifyStatus;
    /**
     * 排序
     */
    @ApiModelProperty(value="排序")
    private Integer sort;
    /**
     * 销量
     */
    @ApiModelProperty(value="销量")
    private Integer sale;
    /**
     * 价格
     */
    @ApiModelProperty(value="价格")
    private BigDecimal price;
    /**
     * 促销价格
     */
    @ApiModelProperty(value="促销价格")
    private BigDecimal promotionPrice;
    /**
     * 赠送的成长值
     */
    @ApiModelProperty(value="赠送的成长值")
    private Integer giftGrowth;
    /**
     * 赠送的积分
     */
    @ApiModelProperty(value="赠送的积分")
    private Integer giftPoint;
    /**
     * 限制使用的积分数
     */
    @ApiModelProperty(value="限制使用的积分数")
    private Integer usePointLimit;
    /**
     * 副标题
     */
    @ApiModelProperty(value="副标题")
    private String subTitle;
    /**
     * 商品描述
     */
    @ApiModelProperty(value="商品描述")
    private String description;
    /**
     * 市场价
     */
    @ApiModelProperty(value="市场价")
    private BigDecimal originalPrice;
    /**
     * 库存
     */
    @ApiModelProperty(value="库存")
    private Integer stock;
    /**
     * 库存预警值
     */
    @ApiModelProperty(value="库存预警值")
    private Integer lowStock;
    /**
     * 单位
     */
    @ApiModelProperty(value="单位")
    private String unit;
    /**
     * 商品重量，默认为克
     */
    @ApiModelProperty(value="商品重量，默认为克")
    private BigDecimal weight;
    /**
     * 是否为预告商品：0->不是；1->是
     */
    @ApiModelProperty(value="是否为预告商品：0->不是；1->是")
    private Integer previewStatus;
    /**
     * 以逗号分割的产品服务：1->无忧退货；2->快速退款；3->免费包邮
     */
    @ApiModelProperty(value="以逗号分割的产品服务：1->无忧退货；2->快速退款；3->免费包邮")
    private String serviceIds;
    /**
     * 关键字
     */
    @ApiModelProperty(value="关键字")
    private String keywords;
    /**
     * 备注
     */
    @ApiModelProperty(value="备注")
    private String note;
    /**
     * 画册图片，连产品图片限制为5张，以逗号分割
     */
    @ApiModelProperty(value="画册图片，连产品图片限制为5张，以逗号分割")
    private String albumPics;
    /**
     * 详情标题
     */
    @ApiModelProperty(value="详情标题")
    private String detailTitle;
    /**
     * 详情描述
     */
    @ApiModelProperty(value="详情描述")
    private String detailDesc;
    /**
     * 产品详情网页内容
     */
    @ApiModelProperty(value="产品详情网页内容")
    private String detailHtml;
    /**
     * 移动端网页详情
     */
    @ApiModelProperty(value="移动端网页详情")
    private String detailMobileHtml;
    /**
     * 促销开始时间
     */
    @ApiModelProperty(value="促销开始时间")
    private LocalDateTime promotionStartTime;
    /**
     * 促销结束时间
     */
    @ApiModelProperty(value="促销结束时间")
    private LocalDateTime promotionEndTime;
    /**
     * 活动限购数量
     */
    @ApiModelProperty(value="活动限购数量")
    private Integer promotionPerLimit;
    /**
     * 促销类型：0->没有促销使用原价;1->使用促销价；2->使用会员价；3->使用阶梯价格；4->使用满减价格；5->限时购
     */
    @ApiModelProperty(value="促销类型：0->没有促销使用原价;1->使用促销价；2->使用会员价；3->使用阶梯价格；4->使用满减价格；5->限时购")
    private Integer promotionType;
    /**
     * 产品分类名称
     */
    @ApiModelProperty(value="产品分类名称")
    private String productCategoryName;
    /**
     * 品牌名称
     */
    @ApiModelProperty(value="品牌名称")
    private String brandName;
    }
